home *** CD-ROM | disk | FTP | other *** search
/ Ian & Stuart's Australian Mac 1993 September / September 93.iso / Archives / Sound / MIDI / MIDI Utilities / MIDI Basic / Midi Test (.txt) < prev    next >
AmigaBASIC Source Code  |  1986-09-29  |  2KB  |  43 lines

  1.     REM  "MIDITEST" - MIDIBASIC Example Program 2 by Allen Marsalis
  2.     LIBRARY "MIDIBASIC" : MIDIOPEN 800,100 : GOSUB Port : GOSUB Clock
  3.     PRINT "Control bytes are in column 1, data bytes are in columns 2-13."
  4.     PRINT "Ready to play...   Hit Mouse Button for Options"
  5.     MIDIfilter 1,254,254,0 : REM remove to see "active sense"
  6.     MIDI 0
  7. AwaitInput:
  8.     MIDIin x% : IF x%=-1 THEN TestMouse
  9.     IF x%>=128 THEN PRINT
  10.     PRINT RIGHT$(SPACE$(9)+STR$(x%),9-LEN(STR$(x%)));
  11.     IF POS(0)>=50 THEN PRINT : PRINT SPACE$(8);
  12. TestMouse:
  13.     IF MOUSE(0)>=0 THEN AwaitInput
  14.     PRINT : PRINT "(P)ort  (C)lock  (M)idi  (F)ilter  (S)end  (Q)uit <return>"
  15.     INPUT "Enter character selection then hit <return> ";s$
  16.     IF LEN(s$)<>1 THEN AwaitInput
  17.     IF s$>"Z" THEN s$=CHR$(ASC(s$)-32) : REM make upper case
  18.     ON INSTR("PCMFSQ",s$) GOSUB Port,Clock,Command,Filter,Send,Quit
  19.     GOTO AwaitInput
  20. Port:
  21.     INPUT "(C)ommunications  or (P)rinter port ";s$
  22.     IF s$="C" OR s$="c" THEN MIDIport 3
  23.     IF s$="P" OR s$="p" THEN MIDIport 4
  24.     RETURN
  25. Clock:
  26.     INPUT "(0).5  (1)  (2)  MHz interface ";x% : MIDIport x% : RETURN
  27. Command:
  28.     INPUT "MIDI command to output (0-6) ";x% : MIDI x% : RETURN
  29. Filter:
  30.     INPUT "Filter (1-8) ";n
  31.     IF n=0 THEN MIDIfilter 0 : RETURN
  32.     INPUT "LOWER Limit (0-255) ";lower
  33.     INPUT "UPPER Limit (0-255) ";upper
  34.     INPUT "Bytes to skip (0-255) ";skip
  35.     MIDIfilter n,lower,upper,skip : RETURN
  36. Send:
  37.     INPUT "Note to send ";s%
  38.     x%=144 : MIDIout x% : MIDIout s% : x%=64 : MIDIout x%
  39.     FOR i=1 TO 2000: NEXT
  40.     x%=144 : MIDIout x% : MIDIout s% : x%=0 : MIDIout x% : RETURN
  41. Quit:
  42.     LIBRARY CLOSE : PRINT "MIDIBASICâ„¢ library closed" : END
  43.